"use strict";
var vue = new Vue({
    el: '#app',
    data() {
        return {
            vueHeader: {
                // 必须要声明一下，否则找不到变量
                userInfo: {}
            },
            // 帖子的信息
            post: {
                user: {}
            },
            postImageSize: "250px", // 帖子图片的大小
            isPostCommentChanging: false, // 是否正在上传评论
            // 表单中的数据
            postCommentFormData: {
                content: "",
            },
            // 表单的校验规则
            postCommentFormRules: {
                content: [
                    { required: true, message: "请输入内容", trigger: "blur" }
                ]
            },
            test: "帖子"
        }
    },
    //钩子函数，VUE对象初始化完成后自动执行
    created() {
        let postId = getParameter("postId");
        console.log(postId);
        axios.get(addressPCGetOneAll + "/" + postId).then((result) => {
            if (result.data.flag) {
                this.post = result.data.data;
            } else {
                this.$notify.error({ title: "错误", message: result.data.message });
            }
        });
    },
    mounted() {

    },
    methods: {
        sendPostComment(formName) {
            // 判断用户是否登录
            if (!vueHeader.isLogin) {
                this.$notify.error({ title: "错误", message: "登录后才能发表评论" });
                return;
            }
            this.$refs[formName].validate((valid) => {
                if (valid) { // 表单校验通过
                    this.isPostCommentChanging = true;
                    this.postCommentFormData.postId = this.post.id;
                    this.$notify.info({ title: "提示", message: "正在发布，请稍后！" });
                    // 上传
                    axios.post(addressPCCAdd, this.postCommentFormData).then((result) => {
                        if (result.data.flag) {
                            // 上传成功
                            this.$notify({ title: "成功", message: result.data.message, type: "success" });
                            // 刷新页面
                            setTimeout(() => {
                                location.reload();
                            }, 1000);
                        } else {
                            this.$notify.error({ title: "错误", message: result.data.message });
                            this.isPostCommentChanging = false;
                        }
                    });
                } else {
                    console.log("表单校验未通过！");
                    this.isPostCommentChanging = false;
                    return false;
                }
            });
        },
        // 清空表单，这个方法可以通用
        resetForm(formName) {
            this.$refs[formName].resetFields();
        },
        // 注意，此方法由vueHeader在创建时自动调用，参数为vueHeader自身对象
        // 可以在vueHeader对象中获取到它的所有信息
        vueHeaderCreated(vueHeader) {
            console.log("vueHeader对象：");
            console.log(vueHeader);
            this.vueHeader = vueHeader;
        },
        // 屏幕大小变化事件，由vueHeader自动调用
        vueHeaderOnresize(screenWidth, screenHeight) {
            if (screenWidth < 500) {
                this.postImageSize = "110px";
            } else if (screenWidth < 810) {
                this.postImageSize = "150px";
            } else {
                this.postImageSize = "250px";
            }
        }
    }
});